package io.renren.common.wxPay;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author Lee
 * @description 没有对外使用
 * @date 2019/8/19 16:03
 **/

@Data
@ApiModel("统一下单dto")
public class WxPayReqDto  implements Serializable {

    @ApiModelProperty(value = "商品描述", example = "腾讯充值中心-QQ会员充值", required = true)
    @NotNull(message = "活动描述不能为空")
    private String body;

    //附加数据，在查询API和支付通知中原样返回，可作为自定义参数使用
    @ApiModelProperty(value = "附加数据", example = "深圳分店", required = false)
    private String attach;

    @ApiModelProperty(value = "商户系统内部订单号，要求32个字符内，只能是数字、大小写字母_-|* 且在同一个商户号下唯一", example = "20150806125346", required = true)
    @NotBlank(message = "订单号不能为空")
    private String out_trade_no;

    @ApiModelProperty(value = "币种", example = "CNY", required = false)
    private String fee_type = "CNY";

    @ApiModelProperty(value = "订单总金额，单位为分", example = "100", required = true)
    @NotBlank(message = "订单金额不能为空")
    private String total_fee;

//    @ApiModelProperty(value = "trade_type=NATIVE时，此参数必传。此参数为二维码中包含的商品ID，商户自行定义",example = "12235413214070356458058",required = false)
//    private String product_id;

//    @ApiModelProperty(value = "trade_type=JSAPI时（即JSAPI支付），此参数必传，此参数为微信用户在商户对应appid下的唯一标识。openid如何获取",example = "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o",required = false)
//    private String openid;

    @ApiModelProperty(value = "支持IPV4和IPV6两种格式的IP地址。用户的客户端IP",required = true)
    private String spbill_create_ip;

}
